/**
 * 通过接口请求后台的blob文件流,转化为文件
 * axios请求为
 * method: 'get',
 * responseType: 'blob',
 */

/**
 * 
 * @param {*} res blob文件流,f12网络请求的预览都是乱码的那个就是
 * @param {string} name 文件名称
 * @param {string} type 文件格式后缀
 * 测试过"ofd", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "pdf", "png", "jpeg", "jpg", "wps",
 */
export function blobDown(res, name, type) {
    let blob = new Blob([res], {
        type: 'application/vnd.ms-' + type
    }); // 构造一个blob对象来处理数据，并设置文件类型
    let a = document.createElement('a'); // 生成一个a标签
    let href = window.URL.createObjectURL(blob); //创建下载的链接
    a.href = href; //指定下载链接
    a.download = name //指定下载文件名
    document.body.appendChild(a); //把a标签加到页面中
    a.click(); //触发a标签下载
    document.body.removeChild(a); //下载完成移除元素
    window.URL.revokeObjectURL(href); //释放掉blob对象
}

